package Day12.类与对象;

/**
 * 张老太养了两只猫猫:一只名字叫小白,今年3岁,白色。
 * 还有一只叫小花,今年100岁,花色。请编写一个程序，当用户输入小猫的名字时，
 * 就显示该猫的名字，年龄，颜色。如果用户输入的小猫名错误，则显示张老太没有这只猫猫。
 */
public class Demo01 {
    public static void main(String[] args) {
        //单独来解决=>不利于数据的管理（把猫的信息已经拆分了）
        //第一只猫的信息
//        String cat1Name="小白";
//        int cat1Age=3;
//        String cat1Color="白色";
        //第二只猫的信息
//        String cat2Name="小花";
//        int cat2Age=100;
//        String cat2Color="花色";

        //数组===>
        /*
        1.数据类型体现不出来
        2.只能通过下标来获取信息，造成变量的名字和内容的关系不明确
        3.不能提现猫的行为
         */
//        String []cat1={"小白","3","白色"};
//        String []cat2={"小花","100","花色"};

        //使用OOP 面向对象解决
        /*
        实例化一只猫（创建一只猫的对象）
        1.new Cat() 创建了一只猫（猫对象）
        2.Cat cat1=new Cat(); 把创建的猫赋给cat1
        3.cat1 就是一个对象
         */
        Cat cat1=new Cat();
        cat1.name="小白";
        cat1.age=3;
        cat1.color="白色";
        cat1.weight="200";
       //创建了第二只猫，并且赋给cat2
        // cat2也是一个对象 猫对象
        Cat cat2=new Cat();
        cat2.name="小花";
        cat2.age=100;
        cat2.color="花色";


        //怎么来访问对象的属性呢？
        System.out.println("第一只猫的信息为名字="+cat1.name+"年龄为="+cat1.age+"肤色为="+cat1.color);
        System.out.println("第二只猫的信息为名字="+cat2.name+"年龄为="+cat2.age+"肤色为="+cat2.color);
    }
}
//使用面向对象的方式来解决养猫问题
//定义一个猫类，Cat -->自定义的数据类型
class Cat{
    //属性 成员变量
    String name;//名字
    int age;//年龄
    String color;//颜色
    String weight;//体重
}